|
|
|
|
Display vs. Real Columns |
When allowing column reordering, the user may see columns in an order other than the order in which an application sees the columns. An application always uses "real" columns in methods and properties. A column which was originally added as column 0 will always remain column 0 for method and property parameters, even if the column order has been changed and the column is no longer the first column displayed. This simplifies the application's programming logic as it can assume that the column position never changes. SftTree/NET translates the real column number into the actual column number. The actual column number is referred to as the "display column" number.
The display column number is identical to the order in which the columns are displayed.
An application can retrieve a "real" column's "display" column number by inspecting the column information returned by ColumnClass.Position. In this example, the real column number of the third column is translated to the display column number:
displayColumn = Tree1.Columns(2).Position
In addition, the Columns.IndexToPosition method can be used to obtain the same result:
displayColumn = Tree1.Columns.IndexToPosition(2)
If an application needs to translate a display column number to a real
column number, the Columns.PositionToIndex property can be used.
In this example, the display column number of the second displayed column is
translated to the real column number:
realColumn = Tree1.Columns.PositionToIndex(1)